/**
 * Observer
 * <p>
 * 观察者模式定义了一种一对多的依赖关系，让多个观察者对象同时监听某一个主题对象。这个主题对象在状态上发生变化时，会通知所有观察者对象，使它们能够自动更新自己。
 * <p>
 * 角色：
 * 1.抽象主题（Subject）角色：主题角色把所有对观察者对象的引用保存在一个聚集里，每个主题都可以有任何数量的观察者。
 * 2.具体主题（ConcreteSubject）角色：将有关状态存入具体现察者对象；在具体主题的内部状态改变时，给所有登记过的观察者发出通知。
 * 3.具体观察者（ConcreteObserver）角色：存储与主题的状态自恰的状态。
 * <p>
 * Created by heqianqian on 2017/6/17.
 */
package com.hqq.behaviour.observer;